In network management, element management (EM) systems can be used as intermediary systems between network elements (such as telecommunication nodes) and a network management (NM) system. Each EM system is responsible for managing a respective collection of network elements. When the status of a network element changes, the network element send messages to its respective EM system. The EM system queues messages received from network elements in buffers, and forwards them to the NM system over a reliable communication channel using a Qs channel process. The EM system also generates its own messages, which are sent to the NM system. However, the EM system generated messages are few in number relative to the network element generated messages. The rate at which the EM system sends messages to the NM system is therefore only slightly greater than the aggregate rate at which the collection of network elements sends messages to the EM system.
When the EM system receives a message from a network element, a message logger stores the message in a buffer until delivery of the message to the NMS is confirmed. One method of storing and forwarding messages is to use a proxy. A proxy is a software process running in association with the EM system. The proxy is responsible for the Qs channel process, which ensures reliable delivery of messages to the NS system. When the EM system receives a message from a network element, it sends the message to the proxy. When the proxy receives the message, a SEND process is initiated. The SEND process translates the message into a format recognizable by the NM system, places the message in a buffer, and forwards the message to the NM system. The NM system receives the message and sends an acknowledgment (ACK) message to the proxy. When the proxy receives the ACK message, an ACK process is initiated. The ACK process removes the message from the buffer.
The proxy can maintain a finite number of buffers, each of which is of a fixed size. For example, in the proxy used by Alcatel's 5523 EM system, up to 100 buffers can be maintained, each of which can store up to 556 port status changes (the smallest sized messages). The NM system processes messages at a maximum rate. Given these two constraints, it is possible for the buffers to overflow if messages are being generated by the network elements and by the EM system at a rate faster than the NM system can process the messages. If the buffers overflow, messages are lost. Since the messages contain status and configuration information of the network elements, lost messages mean the NM system no longer has accurate knowledge of the state of the network. The proxy clears all the buffers and notifies the NM system, which initiates a reconciliation of the network.
In networks having 250 nodes, it can take from 12 to 18 hours to reconcile the network. Larger networks take even longer to reconcile. It is therefore highly desirable to avoid the need to reconcile a network, that is, to avoid overflow of the buffers within the proxy.
U.S. Pat. No. 6,363,421 teaches a method of limiting exchanges of messages using a rate based approach. Messaging is limited to a fixed maximum rate, and messages are sent based on a prioritization. Although this method would prevent overflow of NMS processing, use of a fixed maximum rate is inflexible. For example, if only a single client is sending messages at a given point in time, that single client can only send messages at a rate up to the fixed maximum rate, even though the NMS could in fact process messages at a faster rate.
U.S. Patent Application 20020120730 teaches throttling of messages to an NMS by authorizing the transmission of messages in batches. The NMS authorizes an agent system to send a configured number of messages. Once these messages have been sent by the agent system, the agent system waits for a new authorization, which will be sent by the NMS once it has received the first batch of messages.
U.S. Patent Application 20020116485 teaches a method of throttling messages between NMS clients and servers, using an out-of-band channel to send messages between the clients and the servers. Message throttling is accomplished by polling and by acknowledgment windowing. A configured number of messages are sent to the NMS, and then an acknowledgment is required before more messages are sent.
These methods are limiting in that either complicated polling and windowing communication between the EM systems and the NM system are needed, or the transmission size is fixed and inflexible. A method of throttling event messages by placing backpressure on the EM systems without interfering adding to communications between the EM systems and the NM system would allow graceful degradation of performance as the buffers fill, without limiting the communications with the NM system.